/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2021-2021. All rights reserved.
 */

package com.device.idea.demo.constant;

import com.device.idea.demo.R;

/**
 * Constant
 * 常量数据类
 *
 * @since 2020-12-21
 */
public class Constant {
    /**
     * PACKAGE_NAME
     */
    public static final String PACKAGE_NAME = "com.example.demo";

    /**
     * log path
     */
    public static final String LOG_PATH = "/sdcard/SDKLog/log";

    /**
     * 笔的类型统计
     */
    public static final int PEN_TYPE_COUNT = 5;

    /**
     * 白色背景
     */
    public static final int CANVAS_BACKGROUND_COLOR_WHITE_ARGB = 0xFFE8E8ED;

    public static final int CANVAS_BACKGROUND_COLOR_WHITE_RGBA = 0xE8E8EDFF;

    /**
     * 黑色背景
     */
    public static final int CANVAS_BACKGROUND_COLOR_BLACK_ARGB = 0xFF3E4346;

    public static final int CANVAS_BACKGROUND_COLOR_BLACK_RGBA = 0x3E4346FF;

    /**
     * 绿色背景
     */
    public static final int CANVAS_BACKGROUND_COLOR_GREEN_ARGB = 0xFF123D36;

    public static final int CANVAS_BACKGROUND_COLOR_GREEN_RGBA = 0x123D36FF;

    /**
     * 黑色背景标识
     */
    public static final int CANVAS_BACKGROUND_COLOR_BLACK_INDEX = 1;

    /**
     * 绿色背景标识
     */
    public static final int CANVAS_BACKGROUND_COLOR_GREEN_INDEX = 2;

    /**
     * 白色背景标识
     */
    public static final int CANVAS_BACKGROUND_COLOR_WHITE_INDEX = 3;

    /**
     * 默认橡皮擦颜色，包括橡皮擦颜色和橡皮擦边框颜色
     */
    public static final int ERASE_COLOR = 0x0257FFFF;

    /**
     * 默认小圆形橡皮擦直径
     */
    public static final int NORMAL_CIRCLE_ERASER_WIDTH = 32;

    /**
     * 默认中矩形橡皮擦宽度
     */
    public static final int MIDDLE_RECTANGLE_ERASER_WIDTH = 70;

    /**
     * 默认大矩形橡皮擦宽度
     */
    public static final int LARGE_RECTANGLE_ERASER_WIDTH = 180;

    /**
     * 默认橡皮擦边框宽度
     */
    public static final int ERASER_BORDER_WIDTH = 2;

    /**
     * 圈选线轨迹的颜色
     */
    public static final int SELECTOR_LINE_COLOR = 0x1D8DFFFF;

    /**
     * 圈选线轨迹的宽度，单位像素
     */
    public static final int SELECTOR_LINE_WIDTH = 4;

    /**
     * 圈选后笔迹轮廓的颜色
     */
    public static final int SELECTOR_OUTLINE_COLOR = 0x1D8DFFFF;

    /**
     * 圈选后笔迹轮廓的宽度，单位像素
     */
    public static final int SELECTOR_OUTLINE_WIDTH = 4;

    /**
     * 圈选框的颜色
     */
    public static final int SELECTOR_BORDER_COLOR = 0x1D8DFFFF;

    /**
     * 圈选框连接线的宽度，单位像素
     */
    public static final int SELECTOR_CONNECT_CORNER_LINE_WIDTH = 4;

    /**
     * 圈选框的锚点的宽度，单位像素
     */
    public static final int SELECTOR_CORNER_WIDTH = 24;

    /**
     * 触控点颜色
     */
    public static final int TOUCH_COLOR = 0x0257FF55;

    /**
     * 触控点宽
     */
    public static final int TOUCH_SIZE_WIDTH = 40;

    /**
     * 触控点高
     */
    public static final int TOUCH_SIZE_HEIGHT = 40;

    /**
     * 笔颜色
     */
    public static final int[] PICKER_COLORS = {0xFFFFFFFF, // white
        0x222222ff, // black
        0xF34B4BFF, // red
        0x6ECE7EFF, // green
    };

    public static final int PICKER_COLORS_INDEX_0 = 0;

    public static final int PICKER_COLORS_INDEX_1 = 1;

    public static final int PICKER_COLORS_INDEX_2 = 2;

    public static final int PICKER_COLORS_INDEX_3 = 3;

    /**
     * 笔选择颜色对应的笔图片资源
     * 
     * @apiNote 必须和上面的PICKER_COLORS对应
     */
    public static final int[] PICKER_COLORS_DRAWABLE = {R.drawable.selector_toolbar_pen_white,
        R.drawable.selector_toolbar_pen_black, R.drawable.selector_toolbar_pen_red, R.drawable.selector_pop_pen_green};

    /**
     * 铅笔颜色列表
     */
    public static final int[] PEN_TOP_DRAWABLE_PENCIL = {R.drawable.wb_pencil_01white, R.drawable.wb_pencil_02black,
        R.drawable.wb_pencil_03red, R.drawable.wb_pencil_09green};

    /**
     * 毛笔颜色列表
     */
    public static final int[] PEN_TOP_DRAWABLE_BRUSH = {R.drawable.wb_brush_01white, R.drawable.wb_brush_02black,
        R.drawable.wb_brush_03red, R.drawable.wb_brush_09green};

    /**
     * 荧光笔颜色列表
     * 当前没有荧光笔的资源图片，暂时复用铅笔的资源图片
     */
    public static final int[] PEN_TOP_DRAWABLE_HIGHLIGHTER = {R.drawable.wb_pencil_01white,
        R.drawable.wb_pencil_02black, R.drawable.wb_pencil_03red, R.drawable.wb_pencil_09green};

    /**
     * 文字笔颜色列表
     * 当前没有文字笔的资源图片，暂时复用铅笔的资源图片
     */
    public static final int[] PEN_TOP_DRAWABLE_TEXT = {R.drawable.wb_pencil_01white, R.drawable.wb_pencil_02black,
        R.drawable.wb_pencil_03red, R.drawable.wb_pencil_09green};

    /**
     * 图形笔颜色列表
     * 当前没有图形笔的资源图片，暂时复用铅笔的资源图片
     */
    public static final int[] PEN_TOP_DRAWABLE_GRAPHICS = {R.drawable.wb_pencil_01white, R.drawable.wb_pencil_02black,
        R.drawable.wb_pencil_03red, R.drawable.wb_pencil_09green};

    /**
     * 默认屏幕宽度
     */
    public static final int DEFAULT_SCREEN_WIDTH = 3840;

    /**
     * 默认屏幕高度
     */
    public static final int DEFAULT_SCREEN_HEIGHT = 2160;

    /**
     * 1920 屏幕宽度
     */
    public static final int SCREEN_WIDTH_1920 = 1920;

    /**
     * 1080 屏幕高度
     */
    public static final int SCREEN_HEIGHT_1080 = 1080;

    /**
     * 默认当前白板页
     */
    public static final int DEFAULT_CURRENT_PAGE_NUM = 1;

    /**
     * 白板最大页数限制
     */
    public static final int MAX_PAGE_COUNT = 100;

    /**
     * 笔颜色-白色下标
     */
    public static final int PEN_COLORS_INDEX_WHITE = 0;

    /**
     * 笔颜色-黑色下标
     */
    public static final int PEN_COLORS_INDEX_BLACK = 1;

    /**
     * 笔颜色-红色下标
     */
    public static final int PEN_COLORS_INDEX_RED = 2;

    /**
     * 笔颜色-绿色下标
     */
    public static final int PEN_COLORS_INDEX_GREEN = 3;

    /**
     * undo回调的 what 标识
     */
    public static final int HANDLE_WHAT_UNDO = 0;

    /**
     * redo回调的 what 标识
     */
    public static final int HANDLE_WHAT_REDO = 1;

    /**
     * 默认笔颜色
     */
    public static final int DEFAULT_PEN_COLOR = PICKER_COLORS[0];

    public static final int DEFAULT_PEN_MAX_COUNT = 5;

    public static final int DEFAULT_LOAD_WHITEBOARD_FIRST_PAGE = 1;

    public static final int IMAGE_SAVE_WIDTH = 1920;

    public static final int IMAGE_SAVE_HEIGHT = 2500;

    public static final String ERR_CODE_KEY = ",errCode=";

    public static final String ERR_MSG_KEY = ",errMsg=";

    public static final String BOARD_ID_KEY = ",boardId=";

    public static final String PAGE_NUMBER_KEY = ",pageNumber=";

    /**
     * anchorLocation数组大小
     */
    public static final int ANCHOR_LOCATION_ARRAY_SIZE = 2;

    /**
     * 非法索引
     */
    public static final int ILLEGAL_INDEX = -1;

    /**
     * 非法touch mode
     */
    public static final int ILLEGAL_TOUCH_MODE = -1;

    /**
     * CanvasScale最小值
     */
    public static final int CANVAS_SCALE_MIN_VALUE = 50;

    /**
     * CanvasScale最大值
     */
    public static final int CANVAS_SCALE_MAX_VALUE = 200;
}